Wireless communication systems use cryptography to provide secured communication means for their subscribers. Cryptography provides security such that only an intended receiver can understand the content of a message (which may be, for example, voice data, user data, or FACCH/SACCH messages) transmitted by an authorized transmitter, and only the authorized transmitter can send the message to the intended receiver. The challenge of cryptography is to change the content of the message into a form that only the intended receiver can comprehend. This must be done in a way that is both economical for the transmitter and for the intended receiver. At the same time, it must be very difficult (in terms of time and/or equipment) for an unauthorized receiver (i.e., not the intended receiver) to comprehend the content. As unauthorized receivers and transmitters become more sophisticated, the need for secure communications becomes greater.
FIG. 1 depicts an encryption speech processor architecture incorporated within a transmitter 10 based on the well-known Telecommunication Industrial Association's (TIA) IS-136 (and revisions) standard for time division multiple access (TDMA) and IS-641 standard for Algebraic Code Excited Linear Prediction (ACELP). Transmitter 10 comprises Speech Coder 12, Seven Bit Cyclical Redundancy Coder (7-Bit CRC) 14, Half-Rate Convolutional Coder (1/2-Rate CC) 16, Puncture 18, Voice Cipher 20 and Two-Slot Interleaver 22. Speech Coder 12 encodes a message frame comprising 160 16-bit speech samples to produce 148 encoded speech bits having 96 Class 1 bits and 52 Class 2 bits, wherein the Class 1 bits includes 48 Class 1A bits and 48 Class 1B bits. The Class 1 bits are important bits (e.g., bits representing pitch, intonation, etc.) which require error control protection when transmitted over radio links, wherein error control protection is provided using the cyclical redundancy code, convolutional coding and bit interleaving. The Class 1A bits are provided as input to 7-Bit CRC 14 to produce 7 error control bits. The error control bits, the Class 1 bits and 5 tail bits (comprising convolution code state information) are provided as inputs to 1/2-Rate CC 16 to produce 216 code word bits. The code word bits then undergoes erasure insertion (via Puncture 18) to produce 208 punctured code word bits.
Voice Cipher 20 is used next to secure the message such that only the intended receiver can comprehend the content of the message. Specifically, the punctured code word bits and the Class 2 bits are provided as inputs to Voice Cipher 20. Voice Cipher 20 encrypts the inputs using a 260 bit fixed secret mask associated with the intended receiver to produce 260 encrypted bits. Specifically, encryption is achieved by performing an XOR binary operation on the punctured code word bits and class 2 bits using the secret mask. The encrypted bits are bit interleaved (by Bit Interleaver 22) to produce 260 interleaved bits. The message is then multiplexed, modulated and transmitted by the transmitter 10.
The transitted message is received by a receiver, not shown, where the inverse function of the transmitter 10 is performed. Upon receiving the transmitted message, the receiver demodulates and demultiplexes the transmitted message to obtain 260 interleaved bits. The bit interleaving process is then reversed (by a bit de-interleaver) to obtain 260 encrypted bits. The encrypted bits are decrypted (by a voice decipher) to obtain an output having 208 punctured code word bits and 52 Class 2 bits. If the receiver does not know the 260 bit fixed secret mask employed by the transmitter 10 (i.e., the receiver is not the intended receiver), the receiver would not be able to properly decrypt the encrypted bits.
The punctured code word bits are provided to a 1/2-rate convolution de-coder where the punctured code word bits are de-convoluted to obtain an output having 96 Class 1 bits (comprising 48 Class 1A bits and 48 Class 1B bits) and 7 error control bits. Note that there is no inverse function of the erasure insertion process at the receiver. The bits loss due to erasure insertion are restored in the de-convolution process, as is well-known in the art.
The Class 1A bits are used by a 7-bit CRC at the receiver to produce a second set of 7 error control bits (wherein the first set of 7 error control bits are part of the 1/2-rate convolutional decoder's output). The first and second sets of error control bits are compared (using a CRC check) to determine whether an error occurred with respect to the transmission of the Class 1A bits (i.e., determine whether a bad frame exist). If no transmission error occurred, the Class 1 bits and the Class 2 bits (from the voice decipher) are passed to a speech decoder to be decoded. If a transmission error occurred (i.e., a bad frame is detected), the Class 1A bits and the 32 most significant Class 1B bits may be discarded and replaced with some function or interpolation of the Class 1A bits and the 32 most significant Class 1B bits of the last good frame(s), and passed to the speech decoder. The Class 2 bits (from the voice decipher) and the 16 least significant Class 1B bits (from the 1/2-rate convolutional decoder) are passed to the speech decoder where they are decoded along with the passed function or interpolation of the Class 1A bits and the 32 most significant Class 1B bits of the last good frame(s). Note that if there are any bit errors in the Class 2 bits and the 16 least significant Class 1B bits, such errors will have less perceptual impact on speech quality than errors in the remaining Class 1B and Class 1A bits.
The prior art encryption architecture incorporating a voice cipher offers certain advantages. First, cryptosync from an external source (hereinafter referred to as "external cryptosync") is not required for synchronizing the 260 bit fixed secret mask at both ends (i.e., at the transmitter and receiver), wherein cryptosync is data input for ensuring two cryptographic algorithms are synchronized with each other. Second, there is no degradation in speech quality in the presence of transmission errors. Errors in the transmission of the Class 1A bits and the 32 most significant Class 1B bits can be masked using some function or interpolation of the Class 1A bits and the 32 most significant Class 1B bits of the last good frame(s). The prior art encryption architecture, however, is susceptible to security problems in two manners. First, the 260 bit fixed secret mask can be determined using known plaintext (i.e., input to the Voice Cipher), which can then be used to comprehend (or decrypt) the encrypted bits, therefore compromising the security of the transmitted message. Second, even in the absence of known plaintext, merely XOR'ing adjacent 260-bit frames will eliminate the fixed secret mask and may yield information about how the ACELP speech algorithm's parameters are changing. Accordingly, there exists a need for a speech processor architecture that provides enhanced security without the use of external cryptosync and with minimal speech degradation.